home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 30
/
Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso
/
Aminet
/
dev
/
c
/
flash-0.4.3.lha
/
flash-0.4.3
/
Lib
/
adpcm.h
< prev
next >
Wrap
C/C++ Source or Header
|
1999-02-21
|
776b
|
41 lines
#ifndef _ADPCM_H_
#define _ADPCM_H_
#ifdef DUMP
#include "bistream.h"
#endif
class Adpcm {
// Destination format - note we always decompress to 16 bit
long stereo;
int nBits; // number of bits in each sample
long valpred[2]; // Current state
int index[2];
long nSamples; // number of samples decompressed so far
// Parsing Info
unsigned char *src;
long bitBuf; // this should always contain at least 24 bits of data
int bitPos;
void FillBuffer();
long GetBits(int n);
long GetSBits(int n);
public:
Adpcm(unsigned char *buffer, long isStereo);
void Decompress(short * dst, long n); // return number of good samples
#ifdef DUMP
void dump(BitStream *bs);
void Compress(short *pcm, long n, int bits);
#endif
};
#endif /* _ADPCM_H_ */